Veamos ahora cómo influyen las variables de localización. Por ejemplo, la distancia al centro. Añadimos una columna a los datos que nos de la distancia al centro
pto_center <- st_as_sf(data.frame(lon=-3.7037,lat=40.416775),coords = c("lon","lat"),crs=4326)
pto_vivienda <- st_as_sf(precios_vivienda,coords=c("longitude","latitude"),crs=4326)
dist_center <- st_distance(pto_vivienda,pto_center)
pto_vivienda$dist_center <- as.numeric(dist_center)
Y modelizamos de nuevo
fit <- lm(log(price) ~ log(size) + rooms + as.factor(exterior) +
bathrooms + dist_center, data = pto_vivienda)
summary(fit)$coefficients
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 7.168993e+00 2.533866e-02 282.92707 0.000000e+00
## log(size) 1.226012e+00 6.630386e-03 184.90806 0.000000e+00
## rooms -1.402372e-01 2.331811e-03 -60.14088 0.000000e+00
## as.factor(exterior)TRUE 5.498916e-02 5.087881e-03 10.80787 3.476631e-27
## bathrooms 1.612454e-01 3.153423e-03 51.13343 0.000000e+00
## dist_center -5.416121e-05 7.680664e-07 -70.51631 0.000000e+00